﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Salats
{
    public partial class Add_salat : Form
    {
        public Add_salat()
        {
            InitializeComponent();
        }

        public Salat Sal = new Salat();

        public WithFish WF = new WithFish();
        public WithMeat WM = new WithMeat();


        private void Create_form_Load(object sender, EventArgs e)
        {
            comboBox1.Items.Add("салат с мясом");
            comboBox1.Items.Add("салат с рыбой");
            comboBox1.Items.Add("овощной салат");

            textBox1.Enabled = false;
            textBox3.Enabled = false;
            textBox4.Enabled = false;
            textBox5.Enabled = false;

        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (comboBox1.SelectedIndex)
            {
                case 0:
                    textBox1.Enabled = true;
                    textBox3.Enabled = true;
                    textBox4.Enabled = true;
                    textBox5.Enabled = false;
                    break;
                case 1:
                    textBox1.Enabled = true;
                    textBox3.Enabled = false;
                    textBox4.Enabled = true;
                    textBox5.Enabled = true;

                    break;
                case 2:
                    textBox1.Enabled = true;
                    textBox3.Enabled = false;
                    textBox4.Enabled = true;
                    textBox5.Enabled = false;
                    break;
            }

        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (comboBox1.SelectedIndex == -1)
                MessageBox.Show("Выберите тип cалата");
            else
            {
                switch (comboBox1.SelectedIndex)
                {
                    case 0:
                        if (textBox1.Text == "")
                        {
                            MessageBox.Show("Введите название салата");
                        }
                        else
                        {
                            if (textBox4.Text == "")
                            {
                                MessageBox.Show("Введите калорийность на 100г");
                            }
                            else
                            {
                                if ((Convert.ToInt32(textBox4.Text) < 30) || (Convert.ToInt32(textBox4.Text) > 2000))
                                {
                                    MessageBox.Show("Калорийность введена некорректно");
                                }
                                else
                                {
                                    if (textBox3.Text == "")
                                    {
                                        MessageBox.Show("Введите название мяса");
                                    }
                                    else
                                    {
                                        WM.SetType(comboBox1.Text);
                                        WM.SetName(textBox1.Text);
                                        WM.SetCalorie(Convert.ToInt32(textBox4.Text));
                                        WM.SetMeat(textBox3.Text);
                                        
                                        Sal.Add(WM);
                                        this.Close();

                                    }
                                }
                            }
                        }
                        break;
                    case 1:
                        if (textBox1.Text == "")
                        {
                            MessageBox.Show("Введите название салата");
                        }
                        else
                        {
                            if (textBox4.Text == "")
                            {
                                MessageBox.Show("Введите калорийность на 100г");
                            }
                            else
                            {
                                if ((Convert.ToInt32(textBox4.Text) < 30) || (Convert.ToInt32(textBox4.Text) > 2000))
                                {
                                    MessageBox.Show("Калорийность введена некорректно");
                                }
                                else
                                {
                                    if (textBox5.Text == "")
                                    {
                                        MessageBox.Show("Введите название рыбы");
                                    }
                                    else
                                    {
                                        WF.SetType(comboBox1.Text);
                                        WF.SetName(textBox1.Text);
                                        WF.SetCalorie(Convert.ToInt32(textBox4.Text));
                                        WF.SetFish(textBox5.Text);

                                        Sal.Add(WF);
                                        this.Close();
                                    }

                                }


                            }
                        }
                        break;
                    case 2:
                        if (textBox1.Text == "")
                        {
                            MessageBox.Show("Введите название салата");
                        }
                        else
                        {
                            if (textBox4.Text == "")
                            {
                                MessageBox.Show("Введите калорийность на 100г");
                            }
                            else
                            {
                                if ((Convert.ToInt32(textBox4.Text) < 30) || (Convert.ToInt32(textBox4.Text) > 2000))
                                {
                                    MessageBox.Show("Калорийность введена некорректно");
                                }
                                else
                                {
                                    WM.SetType(comboBox1.Text);
                                    WM.SetName(textBox1.Text);
                                    WM.SetCalorie(Convert.ToInt32(textBox4.Text));

                                    Sal.Add(WM);
                                    this.Close();
                                }

                            }
                        }
                        break;

                }
            }
        }
    }
}
